package com.sinosoft.ebusiness.domain.elementManage;
// 采用工具 Hibernate Tools 3.2.4.GA (sinosoft version) 生成，请勿手工修改。

import java.math.BigDecimal;
import javax.persistence.AttributeOverride;
import javax.persistence.AttributeOverrides;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import com.fasterxml.jackson.annotation.JsonBackReference;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.sinosoft.ebusiness.domain.elementManage.GeProductSection;
import com.sinosoft.ebusiness.domain.elementManage.GeProductSectionItemkindId;

/**
 * POJO类GeProductSectionItemkind
 */
@Entity
@Table(name = "GE_PRODUCT_SECTION_ITEMKIND")
@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler"})
public class GeProductSectionItemkind implements java.io.Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = -5482516560515784140L;
	/** 属性ID */
	private GeProductSectionItemkindId id;
	/**属性geProductSection  */
	private GeProductSection geProductSection;

	/** 属性保险金额/赔偿限额 */
	private BigDecimal amount;

	/** 属性fixedamount */
	private String fixedamount;

	/** 属性amounttype */
	private String amounttype;

	/** 属性amountscop */
	private String amountscop;

	/** 属性免赔额(%) */
	private String deductible;

	/** 属性deductibleamount */
	private String deductibleamount;

	/** 属性isselected */
	private String isselected;

	/** 属性保费/储金 */
	private BigDecimal premium;

	/** 属性费率 */
	private String rate;

	/** 属性险别中文名称 */
	private String kindCName;

	/** 属性险别英文名称 */
	private String kindEName;

	/** 属性mainflag */
	private String mainflag;
	
	/** 属性输入框是否挂事件 */
	private String scriptflag;
	
	/** 属性事件名称 */
	private String scriptname;
	
	/** 属性事件名称 */
	private String scripttype;
	
	/** 属性事件方法 */
	private String scriptfunction;
	
	/** 属性序号*/
	private String serialno;
	
	/*属性备注*/
	private String remark;
	
	/**
	 * 类GeProductSectionItemkind的默认构造方法
	 */
	public GeProductSectionItemkind() {
	}
	/**
	 * 属性geProductSection的get方法
	 * @return
	 */
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "COMBOCODE", nullable = false)
	@JsonBackReference
	public GeProductSection getGeProductSection() {
		return geProductSection;
	}
	/**
	 * 属性geProductSection的set方法
	 * @param geProductSection
	 */
	public void setGeProductSection(GeProductSection geProductSection) {
		this.geProductSection = geProductSection;
	}


	/**
	 * 属性ID的getter方法
	 */
	@EmbeddedId
	@AttributeOverrides({
			@AttributeOverride(name = "kindCode", column = @Column(name = "KINDCODE")),
			@AttributeOverride(name = "riskCode", column = @Column(name = "RISKCODE"))
			 })
	public GeProductSectionItemkindId getId() {
		return this.id;
	}

	/**
	 * 属性ID的setter方法
	 */
	public void setId(GeProductSectionItemkindId id) {
		this.id = id;
	}

	/**
	 * 属性保险金额/赔偿限额的getter方法
	 */

	@Column(name = "AMOUNT")
	public BigDecimal getAmount() {
		return this.amount;
	}

	/**
	 * 属性保险金额/赔偿限额的setter方法
	 */
	public void setAmount(BigDecimal amount) {
		this.amount = amount;
	}

	/**
	 * 属性fixedamount的getter方法
	 */

	@Column(name = "FIXEDAMOUNT")
	public String getFixedamount() {
		return this.fixedamount;
	}

	/**
	 * 属性fixedamount的setter方法
	 */
	public void setFixedamount(String fixedamount) {
		this.fixedamount = fixedamount;
	}

	/**
	 * 属性amounttype的getter方法
	 */

	@Column(name = "AMOUNTTYPE")
	public String getAmounttype() {
		return this.amounttype;
	}

	/**
	 * 属性amounttype的setter方法
	 */
	public void setAmounttype(String amounttype) {
		this.amounttype = amounttype;
	}

	/**
	 * 属性amountscop的getter方法
	 */

	@Column(name = "AMOUNTSCOP")
	public String getAmountscop() {
		return this.amountscop;
	}

	/**
	 * 属性amountscop的setter方法
	 */
	public void setAmountscop(String amountscop) {
		this.amountscop = amountscop;
	}

	/**
	 * 属性免赔额(%)的getter方法
	 */

	@Column(name = "DEDUCTIBLE")
	public String getDeductible() {
		return this.deductible;
	}

	/**
	 * 属性免赔额(%)的setter方法
	 */
	public void setDeductible(String deductible) {
		this.deductible = deductible;
	}

	/**
	 * 属性deductibleamount的getter方法
	 */

	@Column(name = "DEDUCTIBLEAMOUNT")
	public String getDeductibleamount() {
		return this.deductibleamount;
	}

	/**
	 * 属性deductibleamount的setter方法
	 */
	public void setDeductibleamount(String deductibleamount) {
		this.deductibleamount = deductibleamount;
	}

	/**
	 * 属性isselected的getter方法
	 */

	@Column(name = "ISSELECTED")
	public String getIsselected() {
		return this.isselected;
	}

	/**
	 * 属性isselected的setter方法
	 */
	public void setIsselected(String isselected) {
		this.isselected = isselected;
	}

	/**
	 * 属性保费/储金的getter方法
	 */

	@Column(name = "PREMIUM")
	public BigDecimal getPremium() {
		return this.premium;
	}

	/**
	 * 属性保费/储金的setter方法
	 */
	public void setPremium(BigDecimal premium) {
		this.premium = premium;
	}

	/**
	 * 属性费率的getter方法
	 */

	@Column(name = "RATE")
	public String getRate() {
		return this.rate;
	}

	/**
	 * 属性费率的setter方法
	 */
	public void setRate(String rate) {
		this.rate = rate;
	}

	/**
	 * 属性险别中文名称的getter方法
	 */

	@Column(name = "KINDCNAME")
	public String getKindCName() {
		return this.kindCName;
	}

	/**
	 * 属性险别中文名称的setter方法
	 */
	public void setKindCName(String kindCName) {
		this.kindCName = kindCName;
	}

	/**
	 * 属性险别英文名称的getter方法
	 */

	@Column(name = "KINDENAME")
	public String getKindEName() {
		return this.kindEName;
	}

	/**
	 * 属性险别英文名称的setter方法
	 */
	public void setKindEName(String kindEName) {
		this.kindEName = kindEName;
	}

	/**
	 * 属性mainflag的getter方法
	 */

	@Column(name = "MAINFLAG")
	public String getMainflag() {
		return this.mainflag;
	}

	/**
	 * 属性mainflag的setter方法
	 */
	public void setMainflag(String mainflag) {
		this.mainflag = mainflag;
	}
	
	@Column(name = "SCRIPTFLAG")
	public String getScriptflag() {
		return scriptflag;
	}
	public void setScriptflag(String scriptflag) {
		this.scriptflag = scriptflag;
	}
	@Column(name = "SCRIPTNAME")
	public String getScriptname() {
		return scriptname;
	}
	public void setScriptname(String scriptname) {
		this.scriptname = scriptname;
	}
	@Column(name = "SCRIPTTYPE")
	public String getScripttype() {
		return scripttype;
	}
	public void setScripttype(String scripttype) {
		this.scripttype = scripttype;
	}
	@Column(name = "SCRIPTFUNCTION")
	public String getScriptfunction() {
		return scriptfunction;
	}
	public void setScriptfunction(String scriptfunction) {
		this.scriptfunction = scriptfunction;
	}
	@Column(name = "SERIALNO")
	public String getSerialno() {
		return serialno;
	}
	public void setSerialno(String serialno) {
		this.serialno = serialno;
	}
	@Column(name = "REMARK")
	public String getRemark() {
		return remark;
	}
	public void setRemark(String remark) {
		this.remark = remark;
	}
	
}
